package com.central.post.pojo.authenticate

import com.baomidou.mybatisplus.extension.plugins.pagination.Page
import com.central.common.model.CommentVo
import io.swagger.annotations.ApiModel
import io.swagger.annotations.ApiModelProperty

/**
 * @author  fly
 * @date  2021/5/31 10:18
 * @version 1.0
 */


@ApiModel("山正鉴定搜索dto")
data class AuthenticateSearchDto(

    @ApiModelProperty("标题")
    var title: String? = null,

    @ApiModelProperty("鉴定类型 0: 全部 1: 汉服 2: JK 3: Lolita")
    var authenticateType: Int? = null,
)

@ApiModel("山正鉴定模块发布dto")
data class AuthenticatePublishDto(

    @ApiModelProperty("鉴定标题")
    var title: String? = "",

    @ApiModelProperty("发布内容")
    var content: String? = "",

    @ApiModelProperty("发布图片")
    var pics: String? = null,

    @ApiModelProperty("鉴定类型 1: 汉服 2: JK 3: Lolita")
    var authenticateType: Int? = null,
)

@ApiModel("山正鉴定列表Vo")
data class AuthenticateListVo(

    @ApiModelProperty("id")
    var id: Long? = null,

    @ApiModelProperty("发布人头像")
    var headImgUrl: String? = "",

    @ApiModelProperty("发布内容")
    var content: String? = "",
)

@ApiModel("搜索结果")
data class AuthenticateSearchListVo(

    @ApiModelProperty("id")
    var id: Long? = null,

    @ApiModelProperty("标题")
    var title: String? = null
)

@ApiModel("山正鉴定列表")
data class AuthenticateList(

    @ApiModelProperty("累计鉴定数量")
    var authenticateCount: Long? = 0L,

    @ApiModelProperty("山正鉴定列表")
    var authenticateListVos: List<AuthenticateListVo>? = null,
)


@ApiModel("山正鉴定详情")
data class AuthenticateDetailVo(


    @ApiModelProperty("id")
    var id: Long? = null,

    @ApiModelProperty("鉴定标题")
    var title: String? = "",

    @ApiModelProperty("发布内容")
    var content: String? = "",

    @ApiModelProperty("发起人姓名")
    var username: String? = "",

    @ApiModelProperty("鉴定结果")
    var authenticateResult: String? = "",

    @ApiModelProperty("评论列表")
    var commentInfo: Page<CommentVo>? = null,
)


@ApiModel("山正鉴定dto")
data class AuthenticateDto(

    @ApiModelProperty("山正鉴定帖子id")
    var id: Long? = null,

    @ApiModelProperty("鉴定类型 1: 正 2: 山")
    var type: Int? = null,
)

@ApiModel("鉴定达人")
data class AuthenticateTalentList(

    @ApiModelProperty("用户id")
    var id: Long? = null,

    @ApiModelProperty("用户头像")
    var headImgUrl: String? = "",

    @ApiModelProperty("真实姓名")
    var username: String? = "",

    @ApiModelProperty("鉴定过的")
    var haveAuthenticate: String? = "",

    @ApiModelProperty("鉴定类型 1: 汉服 2: JK 3: Lolita")
    var authenticateType: Int? = null,

    @ApiModelProperty("鉴定了多少次")
    var havaAuthenticateCount: Long? = 0L
)

@ApiModel("山正鉴定首页数据")
data class AuthenticateIndexData(

    @ApiModelProperty("鉴定达人")
    var authenticateTalentList: List<AuthenticateTalentList>? = null,

    @ApiModelProperty("鉴定求助区")
    var AuthenticateHelpList: AuthenticateList? = null,

    @ApiModelProperty("鉴定解决区")
    var AuthenticateResolveList:List<AuthenticateListVo>? = null
)